package xcolor;

import java.awt.Color;

/** A Color subclass that provides all the RGB color names from 
 * The X Window System rgb.txt color database.
 * <P>
 * The X11 file <A HREF="rgb.txt"><KBD>rgb.txt</KBD></A> contains 752 color 
 * names and their RGB values. Many of these, however, are shades of gray
 * (also spelt grey), and most of the longer names appear as both one
 * word and multi-word ("deep sky blue" and "deepskyblue"). There are
 * perhaps 200-300 distinct colors. If you have an 8-bit (or less:-( )
 * display, you will not be able to see them all as distinct. Either form,
 * as well as upper, lower or mixed case can be used when constructing XColors.
 *
 * @see		XColorTest
 * @author	Ian Darwin, 
 * <A HREF="mailto:https://darwinsys.com/">https://darwinsys.com/</A>, 
 * <A HREF="https://darwinsys.com">https://darwinsys.com</A>.
 */

public class XColor extends Color {
	private static final long serialVersionUID = 1;
	/** The default name (in case you print me after a failed construction) */
	protected String name = "black";

	/** Construct an XColor given a color value.
	 * Constructs the Color with 0,0,0 (==black), then overrides "value"
	 * in Color to be the RGB of the chosen color.
	 * @exception IllegalArgumentException if the color can't be found.
	 */
	public XColor(String nm) {
		// super(0);
		// value = XColorByName(name = nm);
		super(XColorByName(nm));
		name = nm;
	}

	public static int XColorByName(String nm) {
		for (int i=0; i<data.length; i++) {
			Setting d = data[i];
			// System.out.println("Looking for " + nm + "; trying " + d.name);
			if (nm.equalsIgnoreCase(d.name)) {
				return d.value;
			}
		}
		// How sad... none of the 752 color names matched...
		throw new IllegalArgumentException("Unknown color " + nm);
	}
	public static String XColorByValue(int val) {
		for (int i=0; i<data.length; i++) {
			Setting d = data[i];
			// System.out.println("Looking for " + nm + "; trying " + d.name);
			if (val == d.value) {
				return d.name;
			}
		}
		// How sad... none of the 752 color names matched...
		return "XColor(" + val + ")";
	}

	/** Get the list of all available colors, as a pre-sorted array */
	public static String[] getColorList() {
		String list[] = new String[data.length];
		for (int i=0; i<data.length; i++)
			list[i] = data[i].name;
		return list;
	}

	/** Provide a printable form of this color */
	public String toString() {
		return "XColor(" + name + ")";
	}

	/** The entire data structure: a list of color names, with the
	 * R, G, and B values for each name.
	 */
	protected static Setting[] data = {
		new Setting( 240, 248, 255,		"alice blue" ),
		new Setting( 240, 248, 255,		"aliceblue" ),
		new Setting( 250, 235, 215,		"antique white" ),
		new Setting( 250, 235, 215,		"antiquewhite" ),
		new Setting( 255, 239, 219,		"antiquewhite1" ),
		new Setting( 238, 223, 204,		"antiquewhite2" ),
		new Setting( 205, 192, 176,		"antiquewhite3" ),
		new Setting( 139, 131, 120,		"antiquewhite4" ),
		new Setting( 127, 255, 212,		"aquamarine" ),
		new Setting( 127, 255, 212,		"aquamarine1" ),
		new Setting( 118, 238, 198,		"aquamarine2" ),
		new Setting( 102, 205, 170,		"aquamarine3" ),
		new Setting(  69, 139, 116,		"aquamarine4" ),
		new Setting( 240, 255, 255,		"azure" ),
		new Setting( 240, 255, 255,		"azure1" ),
		new Setting( 224, 238, 238,		"azure2" ),
		new Setting( 193, 205, 205,		"azure3" ),
		new Setting( 131, 139, 139,		"azure4" ),
		new Setting( 245, 245, 220,		"beige" ),
		new Setting( 255, 228, 196,		"bisque" ),
		new Setting( 255, 228, 196,		"bisque1" ),
		new Setting( 238, 213, 183,		"bisque2" ),
		new Setting( 205, 183, 158,		"bisque3" ),
		new Setting( 139, 125, 107,		"bisque4" ),
		new Setting(   0,   0,   0,		"black" ),
		new Setting( 255, 235, 205,		"blanched almond" ),
		new Setting( 255, 235, 205,		"blanchedalmond" ),
		new Setting( 138,  43, 226,		"blue violet" ),
		new Setting(   0,   0, 255,		"blue" ),
		new Setting(   0,   0, 255,		"blue1" ),
		new Setting(   0,   0, 238,		"blue2" ),
		new Setting(   0,   0, 205,		"blue3" ),
		new Setting(   0,   0, 139,		"blue4" ),
		new Setting( 138,  43, 226,		"blueviolet" ),
		new Setting( 165,  42,  42,		"brown" ),
		new Setting( 255,  64,	 64,	"brown1" ),
		new Setting( 238,  59,	 59,	"brown2" ),
		new Setting( 205,  51,	 51,	"brown3" ),
		new Setting( 139,  35,	 35,	"brown4" ),
		new Setting( 222, 184, 135,		"burlywood" ),
		new Setting( 255, 211, 155,		"burlywood1" ),
		new Setting( 238, 197, 145,		"burlywood2" ),
		new Setting( 205, 170, 125,		"burlywood3" ),
		new Setting( 139, 115,	 85,	"burlywood4" ),
		new Setting(  95, 158, 160,		"cadet blue" ),
		new Setting(  95, 158, 160,		"cadetblue" ),
		new Setting( 152, 245, 255,		"cadetblue1" ),
		new Setting( 142, 229, 238,		"cadetblue2" ),
		new Setting( 122, 197, 205,		"cadetblue3" ),
		new Setting(  83, 134, 139,		"cadetblue4" ),
		new Setting( 127, 255,   0,		"chartreuse" ),
		new Setting( 127, 255,	  0,	"chartreuse1" ),
		new Setting( 118, 238,	  0,	"chartreuse2" ),
		new Setting( 102, 205,	  0,	"chartreuse3" ),
		new Setting(  69, 139,	  0,	"chartreuse4" ),
		new Setting( 210, 105,  30,		"chocolate" ),
		new Setting( 255, 127,	 36,	"chocolate1" ),
		new Setting( 238, 118,	 33,	"chocolate2" ),
		new Setting( 205, 102,	 29,	"chocolate3" ),
		new Setting( 139,  69,	 19,	"chocolate4" ),
		new Setting( 255, 127,  80,		"coral" ),
		new Setting( 255, 114,	 86,	"coral1" ),
		new Setting( 238, 106,	 80,	"coral2" ),
		new Setting( 205,  91,	 69,	"coral3" ),
		new Setting( 139,  62,	 47,	"coral4" ),
		new Setting( 100, 149, 237,		"cornflower blue" ),
		new Setting( 100, 149, 237,		"cornflowerblue" ),
		new Setting( 255, 248, 220,		"cornsilk" ),
		new Setting( 255, 248, 220,		"cornsilk1" ),
		new Setting( 238, 232, 205,		"cornsilk2" ),
		new Setting( 205, 200, 177,		"cornsilk3" ),
		new Setting( 139, 136, 120,		"cornsilk4" ),
		new Setting(   0, 255, 255,		"cyan" ),
		new Setting(   0, 255, 255,		"cyan1" ),
		new Setting(   0, 238, 238,		"cyan2" ),
		new Setting(   0, 205, 205,		"cyan3" ),
		new Setting(   0, 139, 139,		"cyan4" ),
		new Setting( 0  ,   0, 139,		"dark blue" ),
		new Setting( 0  , 139, 139,		"dark cyan" ),
		new Setting( 184, 134,  11,		"dark goldenrod" ),
		new Setting( 169, 169, 169,		"dark gray" ),
		new Setting(   0, 100,   0,		"dark green" ),
		new Setting( 169, 169, 169,		"dark grey" ),
		new Setting( 189, 183, 107,		"dark khaki" ),
		new Setting( 139,   0, 139,		"dark magenta" ),
		new Setting(  85, 107,  47,		"dark olive green" ),
		new Setting( 255, 140,   0,		"dark orange" ),
		new Setting( 153,  50, 204,		"dark orchid" ),
		new Setting( 139,   0,   0,		"dark red" ),
		new Setting( 233, 150, 122,		"dark salmon" ),
		new Setting( 143, 188, 143,		"dark sea green" ),
		new Setting(  72,  61, 139,		"dark slate blue" ),
		new Setting(  47,  79,  79,		"dark slate gray" ),
		new Setting(  47,  79,  79,		"dark slate grey" ),
		new Setting(   0, 206, 209,		"dark turquoise" ),
		new Setting( 148,   0, 211,		"dark violet" ),
		new Setting( 0  ,   0, 139,		"darkblue" ),
		new Setting( 0  , 139, 139,		"darkcyan" ),
		new Setting( 184, 134,  11,		"darkgoldenrod" ),
		new Setting( 255, 185,	 15,	"darkgoldenrod1" ),
		new Setting( 238, 173,	 14,	"darkgoldenrod2" ),
		new Setting( 205, 149,	 12,	"darkgoldenrod3" ),
		new Setting( 139, 101,	  8,	"darkgoldenrod4" ),
		new Setting( 169, 169, 169,		"darkgray" ),
		new Setting(   0, 100,   0,		"darkgreen" ),
		new Setting( 169, 169, 169,		"darkgrey" ),
		new Setting( 189, 183, 107,		"darkkhaki" ),
		new Setting( 139,   0, 139,		"darkmagenta" ),
		new Setting(  85, 107,  47,		"darkolivegreen" ),
		new Setting( 202, 255, 112,		"darkolivegreen1" ),
		new Setting( 188, 238, 104,		"darkolivegreen2" ),
		new Setting( 162, 205,	 90,	"darkolivegreen3" ),
		new Setting( 110, 139,	 61,	"darkolivegreen4" ),
		new Setting( 255, 140,   0,		"darkorange" ),
		new Setting( 255, 127,	  0,	"darkorange1" ),
		new Setting( 238, 118,	  0,	"darkorange2" ),
		new Setting( 205, 102,	  0,	"darkorange3" ),
		new Setting( 139,  69,	  0,	"darkorange4" ),
		new Setting( 153,  50, 204,		"darkorchid" ),
		new Setting( 191,  62, 255,		"darkorchid1" ),
		new Setting( 178,  58, 238,		"darkorchid2" ),
		new Setting( 154,  50, 205,		"darkorchid3" ),
		new Setting( 104,  34, 139,		"darkorchid4" ),
		new Setting( 139,   0,   0,		"darkred" ),
		new Setting( 233, 150, 122,		"darksalmon" ),
		new Setting( 143, 188, 143,		"darkseagreen" ),
		new Setting( 193, 255, 193,		"darkseagreen1" ),
		new Setting( 180, 238, 180,		"darkseagreen2" ),
		new Setting( 155, 205, 155,		"darkseagreen3" ),
		new Setting( 105, 139, 105,		"darkseagreen4" ),
		new Setting(  72,  61, 139,		"darkslateblue" ),
		new Setting(  47,  79,  79,		"darkslategray" ),
		new Setting( 151, 255, 255,		"darkslategray1" ),
		new Setting( 141, 238, 238,		"darkslategray2" ),
		new Setting( 121, 205, 205,		"darkslategray3" ),
		new Setting(  82, 139, 139,		"darkslategray4" ),
		new Setting(  47,  79,  79,		"darkslategrey" ),
		new Setting(   0, 206, 209,		"darkturquoise" ),
		new Setting( 148,   0, 211,		"darkviolet" ),
		new Setting( 255,  20, 147,		"deep pink" ),
		new Setting(   0, 191, 255,		"deep sky blue" ),
		new Setting( 255,  20, 147,		"deeppink" ),
		new Setting( 255,  20, 147,		"deeppink1" ),
		new Setting( 238,  18, 137,		"deeppink2" ),
		new Setting( 205,  16, 118,		"deeppink3" ),
		new Setting( 139,  10,	 80,	"deeppink4" ),
		new Setting(   0, 191, 255,		"deepskyblue" ),
		new Setting(   0, 191, 255,		"deepskyblue1" ),
		new Setting(   0, 178, 238,		"deepskyblue2" ),
		new Setting(   0, 154, 205,		"deepskyblue3" ),
		new Setting(   0, 104, 139,		"deepskyblue4" ),
		new Setting( 105, 105, 105,		"dim gray" ),
		new Setting( 105, 105, 105,		"dim grey" ),
		new Setting( 105, 105, 105,		"dimgray" ),
		new Setting( 105, 105, 105,		"dimgrey" ),
		new Setting(  30, 144, 255,		"dodger blue" ),
		new Setting(  30, 144, 255,		"dodgerblue" ),
		new Setting(  30, 144, 255,		"dodgerblue1" ),
		new Setting(  28, 134, 238,		"dodgerblue2" ),
		new Setting(  24, 116, 205,		"dodgerblue3" ),
		new Setting(  16,  78, 139,		"dodgerblue4" ),
		new Setting( 178,  34,  34,		"firebrick" ),
		new Setting( 255,  48,	 48,	"firebrick1" ),
		new Setting( 238,  44,	 44,	"firebrick2" ),
		new Setting( 205,  38,	 38,	"firebrick3" ),
		new Setting( 139,  26,	 26,	"firebrick4" ),
		new Setting( 255, 250, 240,		"floral white" ),
		new Setting( 255, 250, 240,		"floralwhite" ),
		new Setting(  34, 139,  34,		"forest green" ),
		new Setting(  34, 139,  34,		"forestgreen" ),
		new Setting( 220, 220, 220,		"gainsboro" ),
		new Setting( 248, 248, 255,		"ghost white" ),
		new Setting( 248, 248, 255,		"ghostwhite" ),
		new Setting( 255, 215,   0,		"gold" ),
		new Setting( 255, 215,	  0,	"gold1" ),
		new Setting( 238, 201,	  0,	"gold2" ),
		new Setting( 205, 173,	  0,	"gold3" ),
		new Setting( 139, 117,	  0,	"gold4" ),
		new Setting( 218, 165,  32,		"goldenrod" ),
		new Setting( 255, 193,	 37,	"goldenrod1" ),
		new Setting( 238, 180,	 34,	"goldenrod2" ),
		new Setting( 205, 155,	 29,	"goldenrod3" ),
		new Setting( 139, 105,	 20,	"goldenrod4" ),
		new Setting( 190, 190, 190,			"gray" ),
		new Setting(   0,   0,   0,			"gray0" ),
		new Setting(   3,   3,   3,			"gray1" ),
		new Setting(  26,  26,  26 ,		"gray10" ),
		new Setting( 255, 255, 255 ,		"gray100" ),
		new Setting(  28,  28,  28 ,		"gray11" ),
		new Setting(  31,  31,  31 ,		"gray12" ),
		new Setting(  33,  33,  33 ,		"gray13" ),
		new Setting(  36,  36,  36 ,		"gray14" ),
		new Setting(  38,  38,  38 ,		"gray15" ),
		new Setting(  41,  41,  41 ,		"gray16" ),
		new Setting(  43,  43,  43 ,		"gray17" ),
		new Setting(  46,  46,  46 ,		"gray18" ),
		new Setting(  48,  48,  48 ,		"gray19" ),
		new Setting(   5,   5,   5,			"gray2" ),
		new Setting(  51,  51,  51 ,		"gray20" ),
		new Setting(  54,  54,  54 ,		"gray21" ),
		new Setting(  56,  56,  56 ,		"gray22" ),
		new Setting(  59,  59,  59 ,		"gray23" ),
		new Setting(  61,  61,  61 ,		"gray24" ),
		new Setting(  64,  64,  64 ,		"gray25" ),
		new Setting(  66,  66,  66 ,		"gray26" ),
		new Setting(  69,  69,  69 ,		"gray27" ),
		new Setting(  71,  71,  71 ,		"gray28" ),
		new Setting(  74,  74,  74 ,		"gray29" ),
		new Setting(   8,   8,   8,			"gray3" ),
		new Setting(  77,  77,  77 ,		"gray30" ),
		new Setting(  79,  79,  79 ,		"gray31" ),
		new Setting(  82,  82,  82 ,		"gray32" ),
		new Setting(  84,  84,  84 ,		"gray33" ),
		new Setting(  87,  87,  87 ,		"gray34" ),
		new Setting(  89,  89,  89 ,		"gray35" ),
		new Setting(  92,  92,  92 ,		"gray36" ),
		new Setting(  94,  94,  94 ,		"gray37" ),
		new Setting(  97,  97,  97 ,		"gray38" ),
		new Setting(  99,  99,  99 ,		"gray39" ),
		new Setting(  10,  10,  10 ,		"gray4" ),
		new Setting( 102, 102, 102 ,		"gray40" ),
		new Setting( 105, 105, 105 ,		"gray41" ),
		new Setting( 107, 107, 107 ,		"gray42" ),
		new Setting( 110, 110, 110 ,		"gray43" ),
		new Setting( 112, 112, 112 ,		"gray44" ),
		new Setting( 115, 115, 115 ,		"gray45" ),
		new Setting( 117, 117, 117 ,		"gray46" ),
		new Setting( 120, 120, 120 ,		"gray47" ),
		new Setting( 122, 122, 122 ,		"gray48" ),
		new Setting( 125, 125, 125 ,		"gray49" ),
		new Setting(  13,  13,  13 ,		"gray5" ),
		new Setting( 127, 127, 127 ,		"gray50" ),
		new Setting( 130, 130, 130 ,		"gray51" ),
		new Setting( 133, 133, 133 ,		"gray52" ),
		new Setting( 135, 135, 135 ,		"gray53" ),
		new Setting( 138, 138, 138 ,		"gray54" ),
		new Setting( 140, 140, 140 ,		"gray55" ),
		new Setting( 143, 143, 143 ,		"gray56" ),
		new Setting( 145, 145, 145 ,		"gray57" ),
		new Setting( 148, 148, 148 ,		"gray58" ),
		new Setting( 150, 150, 150 ,		"gray59" ),
		new Setting(  15,  15,  15 ,		"gray6" ),
		new Setting( 153, 153, 153 ,		"gray60" ),
		new Setting( 156, 156, 156 ,		"gray61" ),
		new Setting( 158, 158, 158 ,		"gray62" ),
		new Setting( 161, 161, 161 ,		"gray63" ),
		new Setting( 163, 163, 163 ,		"gray64" ),
		new Setting( 166, 166, 166 ,		"gray65" ),
		new Setting( 168, 168, 168 ,		"gray66" ),
		new Setting( 171, 171, 171 ,		"gray67" ),
		new Setting( 173, 173, 173 ,		"gray68" ),
		new Setting( 176, 176, 176 ,		"gray69" ),
		new Setting(  18,  18,  18 ,		"gray7" ),
		new Setting( 179, 179, 179 ,		"gray70" ),
		new Setting( 181, 181, 181 ,		"gray71" ),
		new Setting( 184, 184, 184 ,		"gray72" ),
		new Setting( 186, 186, 186 ,		"gray73" ),
		new Setting( 189, 189, 189 ,		"gray74" ),
		new Setting( 191, 191, 191 ,		"gray75" ),
		new Setting( 194, 194, 194 ,		"gray76" ),
		new Setting( 196, 196, 196 ,		"gray77" ),
		new Setting( 199, 199, 199 ,		"gray78" ),
		new Setting( 201, 201, 201 ,		"gray79" ),
		new Setting(  20,  20,  20 ,		"gray8" ),
		new Setting( 204, 204, 204 ,		"gray80" ),
		new Setting( 207, 207, 207 ,		"gray81" ),
		new Setting( 209, 209, 209 ,		"gray82" ),
		new Setting( 212, 212, 212 ,		"gray83" ),
		new Setting( 214, 214, 214 ,		"gray84" ),
		new Setting( 217, 217, 217 ,		"gray85" ),
		new Setting( 219, 219, 219 ,		"gray86" ),
		new Setting( 222, 222, 222 ,		"gray87" ),
		new Setting( 224, 224, 224 ,		"gray88" ),
		new Setting( 227, 227, 227 ,		"gray89" ),
		new Setting(  23,  23,  23 ,		"gray9" ),
		new Setting( 229, 229, 229 ,		"gray90" ),
		new Setting( 232, 232, 232 ,		"gray91" ),
		new Setting( 235, 235, 235 ,		"gray92" ),
		new Setting( 237, 237, 237 ,		"gray93" ),
		new Setting( 240, 240, 240 ,		"gray94" ),
		new Setting( 242, 242, 242 ,		"gray95" ),
		new Setting( 245, 245, 245 ,		"gray96" ),
		new Setting( 247, 247, 247 ,		"gray97" ),
		new Setting( 250, 250, 250 ,		"gray98" ),
		new Setting( 252, 252, 252 ,		"gray99" ),
		new Setting( 173, 255,  47,		"green yellow" ),
		new Setting(   0, 255,   0 ,	"green" ),
		new Setting(   0, 255,	 0 ,	"green1" ),
		new Setting(   0, 238,	 0 ,	"green2" ),
		new Setting(   0, 205,	 0 ,	"green3" ),
		new Setting(   0, 139,	 0 ,	"green4" ),
		new Setting( 173, 255,  47 ,	"greenyellow" ),
		new Setting( 190, 190, 190 ,		"grey" ),
		new Setting(   0,   0,   0 ,		"grey0" ),
		new Setting(   3,   3,   3 ,		"grey1" ),
		new Setting(  26,  26,  26 ,		"grey10" ),
		new Setting( 255, 255, 255 ,		"grey100" ),
		new Setting(  28,  28,  28 ,		"grey11" ),
		new Setting(  31,  31,  31 ,		"grey12" ),
		new Setting(  33,  33,  33 ,		"grey13" ),
		new Setting(  36,  36,  36 ,		"grey14" ),
		new Setting(  38,  38,  38 ,		"grey15" ),
		new Setting(  41,  41,  41 ,		"grey16" ),
		new Setting(  43,  43,  43 ,		"grey17" ),
		new Setting(  46,  46,  46 ,		"grey18" ),
		new Setting(  48,  48,  48 ,		"grey19" ),
		new Setting(   5,   5,   5 ,		"grey2" ),
		new Setting(  51,  51,  51 ,		"grey20" ),
		new Setting(  54,  54,  54 ,		"grey21" ),
		new Setting(  56,  56,  56 ,		"grey22" ),
		new Setting(  59,  59,  59 ,		"grey23" ),
		new Setting(  61,  61,  61 ,		"grey24" ),
		new Setting(  64,  64,  64 ,		"grey25" ),
		new Setting(  66,  66,  66 ,		"grey26" ),
		new Setting(  69,  69,  69 ,		"grey27" ),
		new Setting(  71,  71,  71 ,		"grey28" ),
		new Setting(  74,  74,  74 ,		"grey29" ),
		new Setting(   8,   8,   8 ,		"grey3" ),
		new Setting(  77,  77,  77 ,		"grey30" ),
		new Setting(  79,  79,  79 ,		"grey31" ),
		new Setting(  82,  82,  82 ,		"grey32" ),
		new Setting(  84,  84,  84 ,		"grey33" ),
		new Setting(  87,  87,  87 ,		"grey34" ),
		new Setting(  89,  89,  89 ,		"grey35" ),
		new Setting(  92,  92,  92 ,		"grey36" ),
		new Setting(  94,  94,  94 ,		"grey37" ),
		new Setting(  97,  97,  97 ,		"grey38" ),
		new Setting(  99,  99,  99 ,		"grey39" ),
		new Setting(  10,  10,  10 ,		"grey4" ),
		new Setting( 102, 102, 102 ,		"grey40" ),
		new Setting( 105, 105, 105 ,		"grey41" ),
		new Setting( 107, 107, 107 ,		"grey42" ),
		new Setting( 110, 110, 110 ,		"grey43" ),
		new Setting( 112, 112, 112 ,		"grey44" ),
		new Setting( 115, 115, 115 ,		"grey45" ),
		new Setting( 117, 117, 117 ,		"grey46" ),
		new Setting( 120, 120, 120 ,		"grey47" ),
		new Setting( 122, 122, 122 ,		"grey48" ),
		new Setting( 125, 125, 125 ,		"grey49" ),
		new Setting(  13,  13,  13 ,		"grey5" ),
		new Setting( 127, 127, 127 ,		"grey50" ),
		new Setting( 130, 130, 130 ,		"grey51" ),
		new Setting( 133, 133, 133 ,		"grey52" ),
		new Setting( 135, 135, 135 ,		"grey53" ),
		new Setting( 138, 138, 138 ,		"grey54" ),
		new Setting( 140, 140, 140 ,		"grey55" ),
		new Setting( 143, 143, 143 ,		"grey56" ),
		new Setting( 145, 145, 145 ,		"grey57" ),
		new Setting( 148, 148, 148 ,		"grey58" ),
		new Setting( 150, 150, 150 ,		"grey59" ),
		new Setting(  15,  15,  15 ,		"grey6" ),
		new Setting( 153, 153, 153 ,		"grey60" ),
		new Setting( 156, 156, 156 ,		"grey61" ),
		new Setting( 158, 158, 158 ,		"grey62" ),
		new Setting( 161, 161, 161 ,		"grey63" ),
		new Setting( 163, 163, 163 ,		"grey64" ),
		new Setting( 166, 166, 166 ,		"grey65" ),
		new Setting( 168, 168, 168 ,		"grey66" ),
		new Setting( 171, 171, 171 ,		"grey67" ),
		new Setting( 173, 173, 173 ,		"grey68" ),
		new Setting( 176, 176, 176 ,		"grey69" ),
		new Setting(  18,  18,  18 ,		"grey7" ),
		new Setting( 179, 179, 179 ,		"grey70" ),
		new Setting( 181, 181, 181 ,		"grey71" ),
		new Setting( 184, 184, 184 ,		"grey72" ),
		new Setting( 186, 186, 186 ,		"grey73" ),
		new Setting( 189, 189, 189 ,		"grey74" ),
		new Setting( 191, 191, 191 ,		"grey75" ),
		new Setting( 194, 194, 194 ,		"grey76" ),
		new Setting( 196, 196, 196 ,		"grey77" ),
		new Setting( 199, 199, 199 ,		"grey78" ),
		new Setting( 201, 201, 201 ,		"grey79" ),
		new Setting(  20,  20,  20 ,		"grey8" ),
		new Setting( 204, 204, 204 ,		"grey80" ),
		new Setting( 207, 207, 207 ,		"grey81" ),
		new Setting( 209, 209, 209 ,		"grey82" ),
		new Setting( 212, 212, 212 ,		"grey83" ),
		new Setting( 214, 214, 214 ,		"grey84" ),
		new Setting( 217, 217, 217 ,		"grey85" ),
		new Setting( 219, 219, 219 ,		"grey86" ),
		new Setting( 222, 222, 222 ,		"grey87" ),
		new Setting( 224, 224, 224 ,		"grey88" ),
		new Setting( 227, 227, 227 ,		"grey89" ),
		new Setting(  23,  23,  23 ,		"grey9" ),
		new Setting( 229, 229, 229 ,		"grey90" ),
		new Setting( 232, 232, 232 ,		"grey91" ),
		new Setting( 235, 235, 235 ,		"grey92" ),
		new Setting( 237, 237, 237 ,		"grey93" ),
		new Setting( 240, 240, 240 ,		"grey94" ),
		new Setting( 242, 242, 242 ,		"grey95" ),
		new Setting( 245, 245, 245 ,		"grey96" ),
		new Setting( 247, 247, 247 ,		"grey97" ),
		new Setting( 250, 250, 250 ,		"grey98" ),
		new Setting( 252, 252, 252 ,		"grey99" ),
		new Setting( 240, 255, 240,		"honeydew" ),
		new Setting( 240, 255, 240,		"honeydew1" ),
		new Setting( 224, 238, 224,		"honeydew2" ),
		new Setting( 193, 205, 193,		"honeydew3" ),
		new Setting( 131, 139, 131,		"honeydew4" ),
		new Setting( 255, 105, 180,		"hot pink" ),
		new Setting( 255, 105, 180,		"hotpink" ),
		new Setting( 255, 110, 180,		"hotpink1" ),
		new Setting( 238, 106, 167,		"hotpink2" ),
		new Setting( 205,  96, 144,		"hotpink3" ),
		new Setting( 139,  58,  98,		"hotpink4" ),
		new Setting( 205,  92,  92,		"indian red" ),
		new Setting( 205,  92,  92,		"indianred" ),
		new Setting( 255, 106, 106,		"indianred1" ),
		new Setting( 238,  99,	99,		"indianred2" ),
		new Setting( 205,  85,	85,		"indianred3" ),
		new Setting( 139,  58,	58,		"indianred4" ),
		new Setting( 255, 255, 240,		"ivory" ),
		new Setting( 255, 255, 240,		"ivory1" ),
		new Setting( 238, 238, 224,		"ivory2" ),
		new Setting( 205, 205, 193,		"ivory3" ),
		new Setting( 139, 139, 131,		"ivory4" ),
		new Setting( 240, 230, 140,		"khaki" ),
		new Setting( 255, 246, 143,		"khaki1" ),
		new Setting( 238, 230, 133,		"khaki2" ),
		new Setting( 205, 198, 115,		"khaki3" ),
		new Setting( 139, 134,	78,		"khaki4" ),
		new Setting( 255, 240, 245,		"lavender blush" ),
		new Setting( 230, 230, 250,		"lavender" ),
		new Setting( 255, 240, 245,		"lavenderblush" ),
		new Setting( 255, 240, 245,		"lavenderblush1" ),
		new Setting( 238, 224, 229,		"lavenderblush2" ),
		new Setting( 205, 193, 197,		"lavenderblush3" ),
		new Setting( 139, 131, 134,		"lavenderblush4" ),
		new Setting( 124, 252,   0,		"lawn green" ),
		new Setting( 124, 252,   0,		"lawngreen" ),
		new Setting( 255, 250, 205,		"lemon chiffon" ),
		new Setting( 255, 250, 205,		"lemonchiffon" ),
		new Setting( 255, 250, 205,		"lemonchiffon1" ),
		new Setting( 238, 233, 191,		"lemonchiffon2" ),
		new Setting( 205, 201, 165,		"lemonchiffon3" ),
		new Setting( 139, 137, 112,		"lemonchiffon4" ),
		new Setting( 173, 216, 230,		"light blue" ),
		new Setting( 240, 128, 128,		"light coral" ),
		new Setting( 224, 255, 255,		"light cyan" ),
		new Setting( 250, 250, 210,		"light goldenrod yellow" ),
		new Setting( 238, 221, 130,		"light goldenrod" ),
		new Setting( 211, 211, 211,		"light gray" ),
		new Setting( 144, 238, 144,		"light green" ),
		new Setting( 211, 211, 211,		"light grey" ),
		new Setting( 255, 182, 193,		"light pink" ),
		new Setting( 255, 160, 122,		"light salmon" ),
		new Setting(  32, 178, 170,		"light sea green" ),
		new Setting( 135, 206, 250,		"light sky blue" ),
		new Setting( 132, 112, 255,		"light slate blue" ),
		new Setting( 119, 136, 153,		"light slate gray" ),
		new Setting( 119, 136, 153,		"light slate grey" ),
		new Setting( 176, 196, 222,		"light steel blue" ),
		new Setting( 255, 255, 224,		"light yellow" ),
		new Setting( 173, 216, 230,		"lightblue" ),
		new Setting( 191, 239, 255,		"lightblue1" ),
		new Setting( 178, 223, 238,		"lightblue2" ),
		new Setting( 154, 192, 205,		"lightblue3" ),
		new Setting( 104, 131, 139,		"lightblue4" ),
		new Setting( 240, 128, 128,		"lightcoral" ),
		new Setting( 224, 255, 255,		"lightcyan" ),
		new Setting( 224, 255, 255,		"lightcyan1" ),
		new Setting( 209, 238, 238,		"lightcyan2" ),
		new Setting( 180, 205, 205,		"lightcyan3" ),
		new Setting( 122, 139, 139,		"lightcyan4" ),
		new Setting( 238, 221, 130,		"lightgoldenrod" ),
		new Setting( 255, 236, 139,		"lightgoldenrod1" ),
		new Setting( 238, 220, 130,		"lightgoldenrod2" ),
		new Setting( 205, 190, 112,		"lightgoldenrod3" ),
		new Setting( 139, 129,	76,		"lightgoldenrod4" ),
		new Setting( 250, 250, 210,		"lightgoldenrodyellow" ),
		new Setting( 211, 211, 211,		"lightgray" ),
		new Setting( 144, 238, 144,		"lightgreen" ),
		new Setting( 211, 211, 211,		"lightgrey" ),
		new Setting( 255, 182, 193,		"lightpink" ),
		new Setting( 255, 174, 185,		"lightpink1" ),
		new Setting( 238, 162, 173,		"lightpink2" ),
		new Setting( 205, 140, 149,		"lightpink3" ),
		new Setting( 139,  95, 101,		"lightpink4" ),
		new Setting( 255, 160, 122,		"lightsalmon" ),
		new Setting( 255, 160, 122,		"lightsalmon1" ),
		new Setting( 238, 149, 114,		"lightsalmon2" ),
		new Setting( 205, 129,	98,		"lightsalmon3" ),
		new Setting( 139,  87,	66,		"lightsalmon4" ),
		new Setting(  32, 178, 170,		"lightseagreen" ),
		new Setting( 135, 206, 250,		"lightskyblue" ),
		new Setting( 176, 226, 255,		"lightskyblue1" ),
		new Setting( 164, 211, 238,		"lightskyblue2" ),
		new Setting( 141, 182, 205,		"lightskyblue3" ),
		new Setting(  96, 123, 139,		"lightskyblue4" ),
		new Setting( 132, 112, 255,		"lightslateblue" ),
		new Setting( 119, 136, 153,		"lightslategray" ),
		new Setting( 119, 136, 153,		"lightslategrey" ),
		new Setting( 176, 196, 222,		"lightsteelblue" ),
		new Setting( 202, 225, 255,		"lightsteelblue1" ),
		new Setting( 188, 210, 238,		"lightsteelblue2" ),
		new Setting( 162, 181, 205,		"lightsteelblue3" ),
		new Setting( 110, 123, 139,		"lightsteelblue4" ),
		new Setting( 255, 255, 224,		"lightyellow" ),
		new Setting( 255, 255, 224,		"lightyellow1" ),
		new Setting( 238, 238, 209,		"lightyellow2" ),
		new Setting( 205, 205, 180,		"lightyellow3" ),
		new Setting( 139, 139, 122,		"lightyellow4" ),
		new Setting(  50, 205,  50,		"lime green" ),
		new Setting(  50, 205,  50,		"limegreen" ),
		new Setting( 250, 240, 230,		"linen" ),
		new Setting( 255,   0, 255,		"magenta" ),
		new Setting( 255,   0, 255,		"magenta1" ),
		new Setting( 238,   0, 238,		"magenta2" ),
		new Setting( 205,   0, 205,		"magenta3" ),
		new Setting( 139,   0, 139,		"magenta4" ),
		new Setting( 176,  48,  96,		"maroon" ),
		new Setting( 255,  52, 179,		"maroon1" ),
		new Setting( 238,  48, 167,		"maroon2" ),
		new Setting( 205,  41, 144,		"maroon3" ),
		new Setting( 139,  28,	98,		"maroon4" ),
		new Setting( 102, 205, 170,		"medium aquamarine" ),
		new Setting(   0,   0, 205,		"medium blue" ),
		new Setting( 186,  85, 211,		"medium orchid" ),
		new Setting( 147, 112, 219,		"medium purple" ),
		new Setting(  60, 179, 113,		"medium sea green" ),
		new Setting( 123, 104, 238,		"medium slate blue" ),
		new Setting(   0, 250, 154,		"medium spring green" ),
		new Setting(  72, 209, 204,		"medium turquoise" ),
		new Setting( 199,  21, 133,		"medium violet red" ),
		new Setting( 102, 205, 170,		"mediumaquamarine" ),
		new Setting(   0,   0, 205,		"mediumblue" ),
		new Setting( 186,  85, 211,		"mediumorchid" ),
		new Setting( 224, 102, 255,		"mediumorchid1" ),
		new Setting( 209,  95, 238,		"mediumorchid2" ),
		new Setting( 180,  82, 205,		"mediumorchid3" ),
		new Setting( 122,  55, 139,		"mediumorchid4" ),
		new Setting( 147, 112, 219,		"mediumpurple" ),
		new Setting( 171, 130, 255,		"mediumpurple1" ),
		new Setting( 159, 121, 238,		"mediumpurple2" ),
		new Setting( 137, 104, 205,		"mediumpurple3" ),
		new Setting(  93,  71, 139,		"mediumpurple4" ),
		new Setting(  60, 179, 113,		"mediumseagreen" ),
		new Setting( 123, 104, 238,		"mediumslateblue" ),
		new Setting(   0, 250, 154,		"mediumspringgreen" ),
		new Setting(  72, 209, 204,		"mediumturquoise" ),
		new Setting( 199,  21, 133,		"mediumvioletred" ),
		new Setting(  25,  25, 112,		"midnight blue" ),
		new Setting(  25,  25, 112,		"midnightblue" ),
		new Setting( 245, 255, 250,		"mint cream" ),
		new Setting( 245, 255, 250,		"mintcream" ),
		new Setting( 255, 228, 225,		"misty rose" ),
		new Setting( 255, 228, 225,		"mistyrose" ),
		new Setting( 255, 228, 225,		"mistyrose1" ),
		new Setting( 238, 213, 210,		"mistyrose2" ),
		new Setting( 205, 183, 181,		"mistyrose3" ),
		new Setting( 139, 125, 123,		"mistyrose4" ),
		new Setting( 255, 228, 181,		"moccasin" ),
		new Setting( 255, 222, 173,		"navajo white" ),
		new Setting( 255, 222, 173,		"navajowhite" ),
		new Setting( 255, 222, 173,		"navajowhite1" ),
		new Setting( 238, 207, 161,		"navajowhite2" ),
		new Setting( 205, 179, 139,		"navajowhite3" ),
		new Setting( 139, 121,	94,		"navajowhite4" ),
		new Setting(   0,   0, 128,		"navy blue" ),
		new Setting(   0,   0, 128,		"navy" ),
		new Setting(   0,   0, 128,		"navyblue" ),
		new Setting( 253, 245, 230,		"old lace" ),
		new Setting( 253, 245, 230,		"oldlace" ),
		new Setting( 107, 142,  35,		"olive drab" ),
		new Setting( 107, 142,  35,		"olivedrab" ),
		new Setting( 192, 255,	62,		"olivedrab1" ),
		new Setting( 179, 238,	58,		"olivedrab2" ),
		new Setting( 154, 205,	50,		"olivedrab3" ),
		new Setting( 105, 139,	34,		"olivedrab4" ),
		new Setting( 255,  69,   0,		"orange red" ),
		new Setting( 255, 165,   0,		"orange" ),
		new Setting( 255, 165,	 0,		"orange1" ),
		new Setting( 238, 154,	 0,		"orange2" ),
		new Setting( 205, 133,	 0,		"orange3" ),
		new Setting( 139,  90,	 0,		"orange4" ),
		new Setting( 255,  69,   0,		"orangered" ),
		new Setting( 255,  69,	 0,		"orangered1" ),
		new Setting( 238,  64,	 0,		"orangered2" ),
		new Setting( 205,  55,	 0,		"orangered3" ),
		new Setting( 139,  37,	 0,		"orangered4" ),
		new Setting( 218, 112, 214,		"orchid" ),
		new Setting( 255, 131, 250,		"orchid1" ),
		new Setting( 238, 122, 233,		"orchid2" ),
		new Setting( 205, 105, 201,		"orchid3" ),
		new Setting( 139,  71, 137,		"orchid4" ),
		new Setting( 238, 232, 170,		"pale goldenrod" ),
		new Setting( 152, 251, 152,		"pale green" ),
		new Setting( 175, 238, 238,		"pale turquoise" ),
		new Setting( 219, 112, 147,		"pale violet red" ),
		new Setting( 238, 232, 170,		"palegoldenrod" ),
		new Setting( 152, 251, 152,		"palegreen" ),
		new Setting( 154, 255, 154,		"palegreen1" ),
		new Setting( 144, 238, 144,		"palegreen2" ),
		new Setting( 124, 205, 124,		"palegreen3" ),
		new Setting(  84, 139,	84,		"palegreen4" ),
		new Setting( 175, 238, 238,		"paleturquoise" ),
		new Setting( 187, 255, 255,		"paleturquoise1" ),
		new Setting( 174, 238, 238,		"paleturquoise2" ),
		new Setting( 150, 205, 205,		"paleturquoise3" ),
		new Setting( 102, 139, 139,		"paleturquoise4" ),
		new Setting( 219, 112, 147,		"palevioletred" ),
		new Setting( 255, 130, 171,		"palevioletred1" ),
		new Setting( 238, 121, 159,		"palevioletred2" ),
		new Setting( 205, 104, 137,		"palevioletred3" ),
		new Setting( 139,  71,	93,		"palevioletred4" ),
		new Setting( 255, 239, 213,		"papaya whip" ),
		new Setting( 255, 239, 213,		"papayawhip" ),
		new Setting( 255, 218, 185,		"peach puff" ),
		new Setting( 255, 218, 185,		"peachpuff" ),
		new Setting( 255, 218, 185,		"peachpuff1" ),
		new Setting( 238, 203, 173,		"peachpuff2" ),
		new Setting( 205, 175, 149,		"peachpuff3" ),
		new Setting( 139, 119, 101,		"peachpuff4" ),
		new Setting( 205, 133,  63,		"peru" ),
		new Setting( 255, 192, 203,		"pink" ),
		new Setting( 255, 181, 197,		"pink1" ),
		new Setting( 238, 169, 184,		"pink2" ),
		new Setting( 205, 145, 158,		"pink3" ),
		new Setting( 139,  99, 108,		"pink4" ),
		new Setting( 221, 160, 221,		"plum" ),
		new Setting( 255, 187, 255,		"plum1" ),
		new Setting( 238, 174, 238,		"plum2" ),
		new Setting( 205, 150, 205,		"plum3" ),
		new Setting( 139, 102, 139,		"plum4" ),
		new Setting( 176, 224, 230,		"powder blue" ),
		new Setting( 176, 224, 230,		"powderblue" ),
		new Setting( 160,  32, 240,		"purple" ),
		new Setting( 155,  48, 255,		"purple1" ),
		new Setting( 145,  44, 238,		"purple2" ),
		new Setting( 125,  38, 205,		"purple3" ),
		new Setting(  85,  26, 139,		"purple4" ),
		new Setting( 255,   0,   0,		"red" ),
		new Setting( 255,   0,	 0,		"red1" ),
		new Setting( 238,   0,	 0,		"red2" ),
		new Setting( 205,   0,	 0,		"red3" ),
		new Setting( 139,   0,	 0,		"red4" ),
		new Setting( 188, 143, 143,		"rosy brown" ),
		new Setting( 188, 143, 143,		"rosybrown" ),
		new Setting( 255, 193, 193,		"rosybrown1" ),
		new Setting( 238, 180, 180,		"rosybrown2" ),
		new Setting( 205, 155, 155,		"rosybrown3" ),
		new Setting( 139, 105, 105,		"rosybrown4" ),
		new Setting(  65, 105, 225,		"royal blue" ),
		new Setting(  65, 105, 225,		"royalblue" ),
		new Setting(  72, 118, 255,		"royalblue1" ),
		new Setting(  67, 110, 238,		"royalblue2" ),
		new Setting(  58,  95, 205,		"royalblue3" ),
		new Setting(  39,  64, 139,		"royalblue4" ),
		new Setting( 139,  69,  19,		"saddle brown" ),
		new Setting( 139,  69,  19,		"saddlebrown" ),
		new Setting( 250, 128, 114,		"salmon" ),
		new Setting( 255, 140, 105,		"salmon1" ),
		new Setting( 238, 130,	98,		"salmon2" ),
		new Setting( 205, 112,	84,		"salmon3" ),
		new Setting( 139,  76,	57,		"salmon4" ),
		new Setting( 244, 164,  96,		"sandy brown" ),
		new Setting( 244, 164,  96,		"sandybrown" ),
		new Setting(  46, 139,  87,		"sea green" ),
		new Setting(  46, 139,  87,		"seagreen" ),
		new Setting(  84, 255, 159,		"seagreen1" ),
		new Setting(  78, 238, 148,		"seagreen2" ),
		new Setting(  67, 205, 128,		"seagreen3" ),
		new Setting(  46, 139,	87,		"seagreen4" ),
		new Setting( 255, 245, 238,		"seashell" ),
		new Setting( 255, 245, 238,		"seashell1" ),
		new Setting( 238, 229, 222,		"seashell2" ),
		new Setting( 205, 197, 191,		"seashell3" ),
		new Setting( 139, 134, 130,		"seashell4" ),
		new Setting( 160,  82,  45,		"sienna" ),
		new Setting( 255, 130,	71,		"sienna1" ),
		new Setting( 238, 121,	66,		"sienna2" ),
		new Setting( 205, 104,	57,		"sienna3" ),
		new Setting( 139,  71,	38,		"sienna4" ),
		new Setting( 135, 206, 235,		"sky blue" ),
		new Setting( 135, 206, 235,		"skyblue" ),
		new Setting( 135, 206, 255,		"skyblue1" ),
		new Setting( 126, 192, 238,		"skyblue2" ),
		new Setting( 108, 166, 205,		"skyblue3" ),
		new Setting(  74, 112, 139,		"skyblue4" ),
		new Setting( 106,  90, 205,		"slate blue" ),
		new Setting( 112, 128, 144,		"slate gray" ),
		new Setting( 112, 128, 144,		"slate grey" ),
		new Setting( 106,  90, 205,		"slateblue" ),
		new Setting( 131, 111, 255,		"slateblue1" ),
		new Setting( 122, 103, 238,		"slateblue2" ),
		new Setting( 105,  89, 205,		"slateblue3" ),
		new Setting(  71,  60, 139,		"slateblue4" ),
		new Setting( 112, 128, 144,		"slategray" ),
		new Setting( 198, 226, 255,		"slategray1" ),
		new Setting( 185, 211, 238,		"slategray2" ),
		new Setting( 159, 182, 205,		"slategray3" ),
		new Setting( 108, 123, 139,		"slategray4" ),
		new Setting( 112, 128, 144,		"slategrey" ),
		new Setting( 255, 250, 250,		"snow" ),
		new Setting( 255, 250, 250,		"snow1" ),
		new Setting( 238, 233, 233,		"snow2" ),
		new Setting( 205, 201, 201,		"snow3" ),
		new Setting( 139, 137, 137,		"snow4" ),
		new Setting(   0, 255, 127,		"spring green" ),
		new Setting(   0, 255, 127,		"springgreen" ),
		new Setting(   0, 255, 127,		"springgreen1" ),
		new Setting(   0, 238, 118,		"springgreen2" ),
		new Setting(   0, 205, 102,		"springgreen3" ),
		new Setting(   0, 139,	69,		"springgreen4" ),
		new Setting(  70, 130, 180,		"steel blue" ),
		new Setting(  70, 130, 180,		"steelblue" ),
		new Setting(  99, 184, 255,		"steelblue1" ),
		new Setting(  92, 172, 238,		"steelblue2" ),
		new Setting(  79, 148, 205,		"steelblue3" ),
		new Setting(  54, 100, 139,		"steelblue4" ),
		new Setting( 210, 180, 140,		"tan" ),
		new Setting( 255, 165,	79,		"tan1" ),
		new Setting( 238, 154,	73,		"tan2" ),
		new Setting( 205, 133,	63,		"tan3" ),
		new Setting( 139,  90,	43,		"tan4" ),
		new Setting( 216, 191, 216,		"thistle" ),
		new Setting( 255, 225, 255,		"thistle1" ),
		new Setting( 238, 210, 238,		"thistle2" ),
		new Setting( 205, 181, 205,		"thistle3" ),
		new Setting( 139, 123, 139,		"thistle4" ),
		new Setting( 255,  99,  71,		"tomato" ),
		new Setting( 255,  99,	71,		"tomato1" ),
		new Setting( 238,  92,	66,		"tomato2" ),
		new Setting( 205,  79,	57,		"tomato3" ),
		new Setting( 139,  54,	38,		"tomato4" ),
		new Setting(  64, 224, 208,		"turquoise" ),
		new Setting(   0, 245, 255,		"turquoise1" ),
		new Setting(   0, 229, 238,		"turquoise2" ),
		new Setting(   0, 197, 205,		"turquoise3" ),
		new Setting(   0, 134, 139,		"turquoise4" ),
		new Setting( 208,  32, 144,		"violet red" ),
		new Setting( 238, 130, 238,		"violet" ),
		new Setting( 208,  32, 144,		"violetred" ),
		new Setting( 255,  62, 150,		"violetred1" ),
		new Setting( 238,  58, 140,		"violetred2" ),
		new Setting( 205,  50, 120,		"violetred3" ),
		new Setting( 139,  34,	82,		"violetred4" ),
		new Setting( 245, 222, 179,		"wheat" ),
		new Setting( 255, 231, 186,		"wheat1" ),
		new Setting( 238, 216, 174,		"wheat2" ),
		new Setting( 205, 186, 150,		"wheat3" ),
		new Setting( 139, 126, 102,		"wheat4" ),
		new Setting( 245, 245, 245,		"white smoke" ),
		new Setting( 255, 255, 255,		"white" ),
		new Setting( 245, 245, 245,		"whitesmoke" ),
		new Setting( 154, 205,  50,		"yellow green" ),
		new Setting( 255, 255,   0,		"yellow" ),
		new Setting( 255, 255,	 0,		"yellow1" ),
		new Setting( 238, 238,	 0,		"yellow2" ),
		new Setting( 205, 205,	 0,		"yellow3" ),
		new Setting( 139, 139,	 0,		"yellow4" ),
		new Setting( 154, 205,  50,		"yellowgreen" ),
	};
}

/** A Helper Class for XColor to hold one triple from the rgb.txt file */
class Setting {
	String name;
	int value;

	/** Construct one Setting given RGB values and a name
	 * @exception	IllegalArgumentException if any of the
	 *				r, g, or b numbers is not in range (0..255).
	 */
	Setting(int r, int g, int b, String nm) {
		if (r<0 || r>255 ||
			g<0 || g>255 ||
			b<0 || g>255)
				throw new
				IllegalArgumentException("Invalid color data for " + nm);
		name = nm;
		value = (0xff000000 | ((r&0xff)<<16) |
			((g&0xff)<<8) | ((b&0xff)<<0));
	}
}
